﻿namespace WizardEngine.Core.Specification
{
    /// <summary>
    /// Flow specification factory. 
    /// </summary>
    public static class FlowSpecificationFactory
    {
        /// <summary>
        /// Creates empty flow specification object ready for further configuration. 
        /// </summary>
        /// <typeparam name="T">Specific custom flow state type. Must match with flow state instance type being loaded. </typeparam>
        /// <returns></returns>
        public static IFlowSpecification<T> Create<T>() where T : FlowState, new()
        {
            return new FlowSpecification<T>();
        }

    }
}
